﻿using System;
using System.Collections.Generic;

namespace ClickLand.CorporacionPlaza.Comunes.Entidades
{
    /// <summary> Clase que representa la entidad poliza en el sistema </summary>
    public class Poliza
    {
        #region Atributos
        /// <summary> Identificador del registro </summary>
        private int _id;


        /// <summary> Fecha de emision de la poliza </summary>
        private DateTime _fechaEmision;


        /// <summary> Monto de la poliza </summary>
        private float _monto;


        /// <summary> Empresa aseguradora </summary>
        private string _aseguradora;


        /// <summary> Nombre del beneficiario de la poliza </summary>
        private string _beneficiario;


        /// <summary> Estado de la poliza </summary>
        private int _estado;


        /// <summary> Fecha de finalizacion de la poliza </summary>
        private DateTime _fechaFin;


        /// <summary> Lista de contratos asociados a la poliza </summary>
        private IList<Contrato> _contratos;

        #endregion

        #region Propiedades

        /// <summary> Identificador del registro </summary>
        public virtual int Id
        {
            get { return _id; }
            set { _id = value; }
        }


        /// <summary> Fecha de emision de la poliza </summary>
        public virtual DateTime FechaEmision
        {
            get { return _fechaEmision; }
            set { _fechaEmision = value; }
        }


        /// <summary> Monto de la poliza </summary>
        public virtual float Monto
        {
            get { return _monto; }
            set { _monto = value; }
        }


        /// <summary> Empresa aseguradora </summary>
        public virtual string Aseguradora
        {
            get { return _aseguradora; }
            set { _aseguradora = value; }
        }


        /// <summary> Nombre del beneficiario de la poliza </summary>
        public virtual string Beneficiario
        {
            get { return _beneficiario; }
            set { _beneficiario = value; }
        }


        /// <summary> Estado de la poliza </summary>
        public virtual int Estado
        {
            get { return _estado; }
            set { _estado = value; }
        }


        /// <summary> Fecha de finalizacion de la poliza </summary>
        public virtual DateTime FechaFin
        {
            get { return _fechaFin; }
            set { _fechaFin = value; }
        }


        /// <summary> Lista de contratos asociados a la poliza </summary>
        public virtual IList<Contrato> Contratos
        {
            get { return _contratos; }
            set { _contratos = value; }
        }

        #endregion
    }
}
